package com.pro.pojo;


import com.fasterxml.jackson.annotation.JsonFormat;
import org.springframework.format.annotation.DateTimeFormat;

import java.util.Date;
import java.util.Objects;

public class JsCourseJournal {

  private Integer id;
  private Integer courseId;
  private String courseName;
  private String courseStatus;
  private String courseCstatus;
  private Integer userId;
  @DateTimeFormat(pattern = "yyyy-MM-dd")
  @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
  private java.util.Date updateDate;
  private String coursePrice;
  private String courseNprice;
  private Integer type;
  private Integer productCode;

  public JsCourseJournal() {
  }

  public JsCourseJournal(Integer courseId, String courseName, String courseStatus, String courseCstatus, Integer userId, Date updateDate, String coursePrice, String courseNprice, Integer type) {
    this.courseId = courseId;
    this.courseName = courseName;
    this.courseStatus = courseStatus;
    this.courseCstatus = courseCstatus;
    this.userId = userId;
    this.updateDate = updateDate;
    this.coursePrice = coursePrice;
    this.courseNprice = courseNprice;
    this.type = type;
  }



  @Override
  public String toString() {
    return "JsCourseJournal{" +
            "id=" + id +
            ", courseId=" + courseId +
            ", courseName='" + courseName + '\'' +
            ", courseStatus='" + courseStatus + '\'' +
            ", courseCstatus='" + courseCstatus + '\'' +
            ", userId=" + userId +
            ", updateDate=" + updateDate +
            ", coursePrice='" + coursePrice + '\'' +
            ", courseNprice='" + courseNprice + '\'' +
            ", type=" + type +
            ", productCode=" + productCode +
            '}';
  }

  @Override
  public boolean equals(Object o) {
    if (this == o) return true;
    if (o == null || getClass() != o.getClass()) return false;
    JsCourseJournal that = (JsCourseJournal) o;
    return Objects.equals(id, that.id) &&
            Objects.equals(courseId, that.courseId) &&
            Objects.equals(courseName, that.courseName) &&
            Objects.equals(courseStatus, that.courseStatus) &&
            Objects.equals(courseCstatus, that.courseCstatus) &&
            Objects.equals(userId, that.userId) &&
            Objects.equals(updateDate, that.updateDate) &&
            Objects.equals(coursePrice, that.coursePrice) &&
            Objects.equals(courseNprice, that.courseNprice) &&
            Objects.equals(type, that.type) &&
            Objects.equals(productCode, that.productCode);
  }

  @Override
  public int hashCode() {
    return Objects.hash(id, courseId, courseName, courseStatus, courseCstatus, userId, updateDate, coursePrice, courseNprice, type, productCode);
  }

  public Integer getId() {
    return id;
  }

  public void setId(Integer id) {
    this.id = id;
  }

  public Integer getCourseId() {
    return courseId;
  }

  public void setCourseId(Integer courseId) {
    this.courseId = courseId;
  }

  public String getCourseName() {
    return courseName;
  }

  public void setCourseName(String courseName) {
    this.courseName = courseName;
  }

  public String getCourseStatus() {
    return courseStatus;
  }

  public void setCourseStatus(String courseStatus) {
    this.courseStatus = courseStatus;
  }

  public String getCourseCstatus() {
    return courseCstatus;
  }

  public void setCourseCstatus(String courseCstatus) {
    this.courseCstatus = courseCstatus;
  }

  public Integer getUserId() {
    return userId;
  }

  public void setUserId(Integer userId) {
    this.userId = userId;
  }

  public Date getUpdateDate() {
    return updateDate;
  }

  public void setUpdateDate(Date updateDate) {
    this.updateDate = updateDate;
  }

  public String getCoursePrice() {
    return coursePrice;
  }

  public void setCoursePrice(String coursePrice) {
    this.coursePrice = coursePrice;
  }

  public String getCourseNprice() {
    return courseNprice;
  }

  public void setCourseNprice(String courseNprice) {
    this.courseNprice = courseNprice;
  }

  public Integer getType() {
    return type;
  }

  public void setType(Integer type) {
    this.type = type;
  }

  public Integer getProductCode() {
    return productCode;
  }

  public void setProductCode(Integer productCode) {
    this.productCode = productCode;
  }
}
